package com.example.studentregistration.service;

import com.example.studentregistration.pojo.Major;
import com.example.studentregistration.util.Result;
import com.github.pagehelper.Page;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

public interface MajorService {
    // 添加专业
    Result<?> insertMajor(Major major);
    
    // 修改专业
    Result<?> updateMajor(Major major);
    
    // 删除专业
    Result<?> deleteMajor(Integer id);
    
    // 批量删除专业
    int batchDeleteMajor(List<Integer> ids);
    
    // 查询所有专业（分页）
    Page queryAllMajors(Integer currentPage, Integer pageSize);
    
    // 根据ID查询专业
    Result<Major> queryMajorById(Integer id);
    
    // 根据专业名称查询专业
    Result<Major> queryMajorByName(String majorName);
    
    // 根据专业代码查询专业
    Result<Major> queryMajorByCode(String majorCode);
    
    // 导出专业信息
    void exportExcel(HttpServletResponse response) throws IOException;
}